package com.tanhua.dubbo.api;

import com.tanhua.model.db.UserInfo;
import com.tanhua.model.vo.PageResult;
import com.tanhua.model.vo.UserInfoVo;

import java.util.List;
import java.util.Map;

/**
 * 用户信息服务接口
 */
public interface UserInfoApi {
    /**
     * 完善个人信息服务方法
     * @param userInfo
     */
    void add(UserInfo userInfo);

    List<UserInfo> findByBatchIds(List<Long> listBlackUserId);

    /**
     * 更新用户信息
     * @param userInfo
     */
    void update(UserInfo userInfo);

    /**
     * UserInfoVo
     * @param userID
     * @return
     */
    UserInfo findUserInfo(Long userID);

    /**
     * 根据推荐用户id以及条件进行过滤用户数据
     * @param serviceUserIds
     * @param condition
     * @return
     */
    Map<Long, UserInfo> findByCondition(List<Long> serviceUserIds, UserInfo condition);

    /**
     * 分页查询
     * @param page
     * @param pageSize
     * @return
     */
    PageResult findPage(Long page, Long pageSize);
}
